﻿using System;
using SharpSqlAnalyzer.nodes;
using SharpSqlAnalyzer.nodes.mssql;

namespace SharpSqlAnalyzer.stmt.mssql
{
	// Token: 0x02000164 RID: 356
	public class TMssqlBulkInsert : TCustomSqlStatement
	{
		// Token: 0x06000C27 RID: 3111 RVA: 0x00306FD7 File Offset: 0x003051D7
		public TMssqlBulkInsert(EDbVendor dbvendor) : base(dbvendor)
		{
			this.sqlstatementtype = ESqlStatementType.sstmssqlbulkinsert;
		}

		// Token: 0x06000C28 RID: 3112 RVA: 0x00306FEB File Offset: 0x003051EB
		internal override void buildsql()
		{
		}

		// Token: 0x06000C29 RID: 3113 RVA: 0x00306FED File Offset: 0x003051ED
		internal override void clear()
		{
		}

		// Token: 0x06000C2A RID: 3114 RVA: 0x00306FEF File Offset: 0x003051EF
		internal override string getasprettytext()
		{
			return "";
		}

		// Token: 0x06000C2B RID: 3115 RVA: 0x00306FF6 File Offset: 0x003051F6
		internal virtual void iterate(TVisitorAbs pvisitor)
		{
		}

		// Token: 0x06000C2C RID: 3116 RVA: 0x00306FF8 File Offset: 0x003051F8
		public override int doParseStatement(TCustomSqlStatement psql)
		{
			if (this.rootNode == null)
			{
				return -1;
			}
			TMssqlBulkInsertSqlNode tmssqlBulkInsertSqlNode = (TMssqlBulkInsertSqlNode)this.rootNode;
			base.doParseStatement(psql);
			this.tableName = tmssqlBulkInsertSqlNode.TableName;
			this.datafile = tmssqlBulkInsertSqlNode.Datafile;
			return 0;
		}

		// Token: 0x17000237 RID: 567
		// (get) Token: 0x06000C2D RID: 3117 RVA: 0x0030703C File Offset: 0x0030523C
		// (set) Token: 0x06000C2E RID: 3118 RVA: 0x00307044 File Offset: 0x00305244
		public virtual TConstant Datafile
		{
			get
			{
				return this.datafile;
			}
			set
			{
				this.datafile = value;
			}
		}

		// Token: 0x17000238 RID: 568
		// (get) Token: 0x06000C2F RID: 3119 RVA: 0x0030704D File Offset: 0x0030524D
		// (set) Token: 0x06000C30 RID: 3120 RVA: 0x00307055 File Offset: 0x00305255
		public virtual TObjectName TableName
		{
			get
			{
				return this.tableName;
			}
			set
			{
				this.tableName = value;
			}
		}

		// Token: 0x06000C31 RID: 3121 RVA: 0x0030705E File Offset: 0x0030525E
		public override void accept(TParseTreeVisitor v)
		{
			v.preVisit(this);
			v.postVisit(this);
		}

		// Token: 0x06000C32 RID: 3122 RVA: 0x0030706E File Offset: 0x0030526E
		public override void acceptChildren(TParseTreeVisitor v)
		{
			v.preVisit(this);
			v.postVisit(this);
		}

		// Token: 0x040012D2 RID: 4818
		private TObjectName tableName;

		// Token: 0x040012D3 RID: 4819
		private TConstant datafile;
	}
}
